package ystp.model;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class TyExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public TyExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(String value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }
        public Criteria andEqualTo(String fieldName, String value) {
            // 调用 addCriterion 方法来添加条件
            // 注意：这里的 "fieldName" 和 "value" 是动态传入的，而 "fieldName" 在 SQL 中将用作列名
            // "value" 将用作与该列进行比较的值
            addCriterion(fieldName + " =", value, value);
            // 返回当前对象，以便进行链式调用
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(String value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(String value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(String value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(String value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(String value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLike(String value) {
            addCriterion("id like", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotLike(String value) {
            addCriterion("id not like", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<String> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<String> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(String value1, String value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(String value1, String value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andXiangmuidIsNull() {
            addCriterion("xiangmuid is null");
            return (Criteria) this;
        }

        public Criteria andXiangmuidIsNotNull() {
            addCriterion("xiangmuid is not null");
            return (Criteria) this;
        }

        public Criteria andXiangmuidEqualTo(String value) {
            addCriterion("xiangmuid =", value, "xiangmuid");
            return (Criteria) this;
        }

        public Criteria andXiangmuidNotEqualTo(String value) {
            addCriterion("xiangmuid <>", value, "xiangmuid");
            return (Criteria) this;
        }

        public Criteria andXiangmuidGreaterThan(String value) {
            addCriterion("xiangmuid >", value, "xiangmuid");
            return (Criteria) this;
        }

        public Criteria andXiangmuidGreaterThanOrEqualTo(String value) {
            addCriterion("xiangmuid >=", value, "xiangmuid");
            return (Criteria) this;
        }

        public Criteria andXiangmuidLessThan(String value) {
            addCriterion("xiangmuid <", value, "xiangmuid");
            return (Criteria) this;
        }

        public Criteria andXiangmuidLessThanOrEqualTo(String value) {
            addCriterion("xiangmuid <=", value, "xiangmuid");
            return (Criteria) this;
        }

        public Criteria andXiangmuidLike(String value) {
            addCriterion("xiangmuid like", value, "xiangmuid");
            return (Criteria) this;
        }

        public Criteria andXiangmuidNotLike(String value) {
            addCriterion("xiangmuid not like", value, "xiangmuid");
            return (Criteria) this;
        }

        public Criteria andXiangmuidIn(List<String> values) {
            addCriterion("xiangmuid in", values, "xiangmuid");
            return (Criteria) this;
        }

        public Criteria andXiangmuidNotIn(List<String> values) {
            addCriterion("xiangmuid not in", values, "xiangmuid");
            return (Criteria) this;
        }

        public Criteria andXiangmuidBetween(String value1, String value2) {
            addCriterion("xiangmuid between", value1, value2, "xiangmuid");
            return (Criteria) this;
        }

        public Criteria andXiangmuidNotBetween(String value1, String value2) {
            addCriterion("xiangmuid not between", value1, value2, "xiangmuid");
            return (Criteria) this;
        }

        public Criteria andText1IsNull() {
            addCriterion("text1 is null");
            return (Criteria) this;
        }

        public Criteria andText1IsNotNull() {
            addCriterion("text1 is not null");
            return (Criteria) this;
        }

        public Criteria andText1EqualTo(String value) {
            addCriterion("text1 =", value, "text1");
            return (Criteria) this;
        }

        public Criteria andText1NotEqualTo(String value) {
            addCriterion("text1 <>", value, "text1");
            return (Criteria) this;
        }

        public Criteria andText1GreaterThan(String value) {
            addCriterion("text1 >", value, "text1");
            return (Criteria) this;
        }

        public Criteria andText1GreaterThanOrEqualTo(String value) {
            addCriterion("text1 >=", value, "text1");
            return (Criteria) this;
        }

        public Criteria andText1LessThan(String value) {
            addCriterion("text1 <", value, "text1");
            return (Criteria) this;
        }

        public Criteria andText1LessThanOrEqualTo(String value) {
            addCriterion("text1 <=", value, "text1");
            return (Criteria) this;
        }

        public Criteria andText1Like(String value) {
            addCriterion("text1 like", value, "text1");
            return (Criteria) this;
        }

        public Criteria andText1NotLike(String value) {
            addCriterion("text1 not like", value, "text1");
            return (Criteria) this;
        }

        public Criteria andText1In(List<String> values) {
            addCriterion("text1 in", values, "text1");
            return (Criteria) this;
        }

        public Criteria andText1NotIn(List<String> values) {
            addCriterion("text1 not in", values, "text1");
            return (Criteria) this;
        }

        public Criteria andText1Between(String value1, String value2) {
            addCriterion("text1 between", value1, value2, "text1");
            return (Criteria) this;
        }

        public Criteria andText1NotBetween(String value1, String value2) {
            addCriterion("text1 not between", value1, value2, "text1");
            return (Criteria) this;
        }

        public Criteria andText2IsNull() {
            addCriterion("text2 is null");
            return (Criteria) this;
        }

        public Criteria andText2IsNotNull() {
            addCriterion("text2 is not null");
            return (Criteria) this;
        }

        public Criteria andText2EqualTo(String value) {
            addCriterion("text2 =", value, "text2");
            return (Criteria) this;
        }

        public Criteria andText2NotEqualTo(String value) {
            addCriterion("text2 <>", value, "text2");
            return (Criteria) this;
        }

        public Criteria andText2GreaterThan(String value) {
            addCriterion("text2 >", value, "text2");
            return (Criteria) this;
        }

        public Criteria andText2GreaterThanOrEqualTo(String value) {
            addCriterion("text2 >=", value, "text2");
            return (Criteria) this;
        }

        public Criteria andText2LessThan(String value) {
            addCriterion("text2 <", value, "text2");
            return (Criteria) this;
        }

        public Criteria andText2LessThanOrEqualTo(String value) {
            addCriterion("text2 <=", value, "text2");
            return (Criteria) this;
        }

        public Criteria andText2Like(String value) {
            addCriterion("text2 like", value, "text2");
            return (Criteria) this;
        }

        public Criteria andText2NotLike(String value) {
            addCriterion("text2 not like", value, "text2");
            return (Criteria) this;
        }

        public Criteria andText2In(List<String> values) {
            addCriterion("text2 in", values, "text2");
            return (Criteria) this;
        }

        public Criteria andText2NotIn(List<String> values) {
            addCriterion("text2 not in", values, "text2");
            return (Criteria) this;
        }

        public Criteria andText2Between(String value1, String value2) {
            addCriterion("text2 between", value1, value2, "text2");
            return (Criteria) this;
        }

        public Criteria andText2NotBetween(String value1, String value2) {
            addCriterion("text2 not between", value1, value2, "text2");
            return (Criteria) this;
        }

        public Criteria andText3IsNull() {
            addCriterion("text3 is null");
            return (Criteria) this;
        }

        public Criteria andText3IsNotNull() {
            addCriterion("text3 is not null");
            return (Criteria) this;
        }

        public Criteria andText3EqualTo(String value) {
            addCriterion("text3 =", value, "text3");
            return (Criteria) this;
        }

        public Criteria andText3NotEqualTo(String value) {
            addCriterion("text3 <>", value, "text3");
            return (Criteria) this;
        }

        public Criteria andText3GreaterThan(String value) {
            addCriterion("text3 >", value, "text3");
            return (Criteria) this;
        }

        public Criteria andText3GreaterThanOrEqualTo(String value) {
            addCriterion("text3 >=", value, "text3");
            return (Criteria) this;
        }

        public Criteria andText3LessThan(String value) {
            addCriterion("text3 <", value, "text3");
            return (Criteria) this;
        }

        public Criteria andText3LessThanOrEqualTo(String value) {
            addCriterion("text3 <=", value, "text3");
            return (Criteria) this;
        }

        public Criteria andText3Like(String value) {
            addCriterion("text3 like", value, "text3");
            return (Criteria) this;
        }

        public Criteria andText3NotLike(String value) {
            addCriterion("text3 not like", value, "text3");
            return (Criteria) this;
        }

        public Criteria andText3In(List<String> values) {
            addCriterion("text3 in", values, "text3");
            return (Criteria) this;
        }

        public Criteria andText3NotIn(List<String> values) {
            addCriterion("text3 not in", values, "text3");
            return (Criteria) this;
        }

        public Criteria andText3Between(String value1, String value2) {
            addCriterion("text3 between", value1, value2, "text3");
            return (Criteria) this;
        }

        public Criteria andText3NotBetween(String value1, String value2) {
            addCriterion("text3 not between", value1, value2, "text3");
            return (Criteria) this;
        }

        public Criteria andOrdernumberIsNull() {
            addCriterion("ordernumber is null");
            return (Criteria) this;
        }

        public Criteria andOrdernumberIsNotNull() {
            addCriterion("ordernumber is not null");
            return (Criteria) this;
        }

        public Criteria andOrdernumberEqualTo(Integer value) {
            addCriterion("ordernumber =", value, "ordernumber");
            return (Criteria) this;
        }

        public Criteria andOrdernumberNotEqualTo(Integer value) {
            addCriterion("ordernumber <>", value, "ordernumber");
            return (Criteria) this;
        }

        public Criteria andOrdernumberGreaterThan(Integer value) {
            addCriterion("ordernumber >", value, "ordernumber");
            return (Criteria) this;
        }

        public Criteria andOrdernumberGreaterThanOrEqualTo(Integer value) {
            addCriterion("ordernumber >=", value, "ordernumber");
            return (Criteria) this;
        }

        public Criteria andOrdernumberLessThan(Integer value) {
            addCriterion("ordernumber <", value, "ordernumber");
            return (Criteria) this;
        }

        public Criteria andOrdernumberLessThanOrEqualTo(Integer value) {
            addCriterion("ordernumber <=", value, "ordernumber");
            return (Criteria) this;
        }

        public Criteria andOrdernumberIn(List<Integer> values) {
            addCriterion("ordernumber in", values, "ordernumber");
            return (Criteria) this;
        }

        public Criteria andOrdernumberNotIn(List<Integer> values) {
            addCriterion("ordernumber not in", values, "ordernumber");
            return (Criteria) this;
        }

        public Criteria andOrdernumberBetween(Integer value1, Integer value2) {
            addCriterion("ordernumber between", value1, value2, "ordernumber");
            return (Criteria) this;
        }

        public Criteria andOrdernumberNotBetween(Integer value1, Integer value2) {
            addCriterion("ordernumber not between", value1, value2, "ordernumber");
            return (Criteria) this;
        }

        public Criteria andIsvoteIsNull() {
            addCriterion("isvote is null");
            return (Criteria) this;
        }

        public Criteria andIsvoteIsNotNull() {
            addCriterion("isvote is not null");
            return (Criteria) this;
        }

        public Criteria andIsvoteEqualTo(Integer value) {
            addCriterion("isvote =", value, "isvote");
            return (Criteria) this;
        }

        public Criteria andIsvoteNotEqualTo(Integer value) {
            addCriterion("isvote <>", value, "isvote");
            return (Criteria) this;
        }

        public Criteria andIsvoteGreaterThan(Integer value) {
            addCriterion("isvote >", value, "isvote");
            return (Criteria) this;
        }

        public Criteria andIsvoteGreaterThanOrEqualTo(Integer value) {
            addCriterion("isvote >=", value, "isvote");
            return (Criteria) this;
        }

        public Criteria andIsvoteLessThan(Integer value) {
            addCriterion("isvote <", value, "isvote");
            return (Criteria) this;
        }

        public Criteria andIsvoteLessThanOrEqualTo(Integer value) {
            addCriterion("isvote <=", value, "isvote");
            return (Criteria) this;
        }

        public Criteria andIsvoteIn(List<Integer> values) {
            addCriterion("isvote in", values, "isvote");
            return (Criteria) this;
        }

        public Criteria andIsvoteNotIn(List<Integer> values) {
            addCriterion("isvote not in", values, "isvote");
            return (Criteria) this;
        }

        public Criteria andIsvoteBetween(Integer value1, Integer value2) {
            addCriterion("isvote between", value1, value2, "isvote");
            return (Criteria) this;
        }

        public Criteria andIsvoteNotBetween(Integer value1, Integer value2) {
            addCriterion("isvote not between", value1, value2, "isvote");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIsNull() {
            addCriterion("createtime is null");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIsNotNull() {
            addCriterion("createtime is not null");
            return (Criteria) this;
        }

        public Criteria andCreatetimeEqualTo(Date value) {
            addCriterion("createtime =", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotEqualTo(Date value) {
            addCriterion("createtime <>", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeGreaterThan(Date value) {
            addCriterion("createtime >", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeGreaterThanOrEqualTo(Date value) {
            addCriterion("createtime >=", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeLessThan(Date value) {
            addCriterion("createtime <", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeLessThanOrEqualTo(Date value) {
            addCriterion("createtime <=", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIn(List<Date> values) {
            addCriterion("createtime in", values, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotIn(List<Date> values) {
            addCriterion("createtime not in", values, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeBetween(Date value1, Date value2) {
            addCriterion("createtime between", value1, value2, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotBetween(Date value1, Date value2) {
            addCriterion("createtime not between", value1, value2, "createtime");
            return (Criteria) this;
        }

        public Criteria andText4IsNull() {
            addCriterion("text4 is null");
            return (Criteria) this;
        }

        public Criteria andText4IsNotNull() {
            addCriterion("text4 is not null");
            return (Criteria) this;
        }

        public Criteria andText4EqualTo(String value) {
            addCriterion("text4 =", value, "text4");
            return (Criteria) this;
        }

        public Criteria andText4NotEqualTo(String value) {
            addCriterion("text4 <>", value, "text4");
            return (Criteria) this;
        }

        public Criteria andText4GreaterThan(String value) {
            addCriterion("text4 >", value, "text4");
            return (Criteria) this;
        }

        public Criteria andText4GreaterThanOrEqualTo(String value) {
            addCriterion("text4 >=", value, "text4");
            return (Criteria) this;
        }

        public Criteria andText4LessThan(String value) {
            addCriterion("text4 <", value, "text4");
            return (Criteria) this;
        }

        public Criteria andText4LessThanOrEqualTo(String value) {
            addCriterion("text4 <=", value, "text4");
            return (Criteria) this;
        }

        public Criteria andText4Like(String value) {
            addCriterion("text4 like", value, "text4");
            return (Criteria) this;
        }

        public Criteria andText4NotLike(String value) {
            addCriterion("text4 not like", value, "text4");
            return (Criteria) this;
        }

        public Criteria andText4In(List<String> values) {
            addCriterion("text4 in", values, "text4");
            return (Criteria) this;
        }

        public Criteria andText4NotIn(List<String> values) {
            addCriterion("text4 not in", values, "text4");
            return (Criteria) this;
        }

        public Criteria andText4Between(String value1, String value2) {
            addCriterion("text4 between", value1, value2, "text4");
            return (Criteria) this;
        }

        public Criteria andText4NotBetween(String value1, String value2) {
            addCriterion("text4 not between", value1, value2, "text4");
            return (Criteria) this;
        }

        public Criteria andText5IsNull() {
            addCriterion("text5 is null");
            return (Criteria) this;
        }

        public Criteria andText5IsNotNull() {
            addCriterion("text5 is not null");
            return (Criteria) this;
        }

        public Criteria andText5EqualTo(String value) {
            addCriterion("text5 =", value, "text5");
            return (Criteria) this;
        }

        public Criteria andText5NotEqualTo(String value) {
            addCriterion("text5 <>", value, "text5");
            return (Criteria) this;
        }

        public Criteria andText5GreaterThan(String value) {
            addCriterion("text5 >", value, "text5");
            return (Criteria) this;
        }

        public Criteria andText5GreaterThanOrEqualTo(String value) {
            addCriterion("text5 >=", value, "text5");
            return (Criteria) this;
        }

        public Criteria andText5LessThan(String value) {
            addCriterion("text5 <", value, "text5");
            return (Criteria) this;
        }

        public Criteria andText5LessThanOrEqualTo(String value) {
            addCriterion("text5 <=", value, "text5");
            return (Criteria) this;
        }

        public Criteria andText5Like(String value) {
            addCriterion("text5 like", value, "text5");
            return (Criteria) this;
        }

        public Criteria andText5NotLike(String value) {
            addCriterion("text5 not like", value, "text5");
            return (Criteria) this;
        }

        public Criteria andText5In(List<String> values) {
            addCriterion("text5 in", values, "text5");
            return (Criteria) this;
        }

        public Criteria andText5NotIn(List<String> values) {
            addCriterion("text5 not in", values, "text5");
            return (Criteria) this;
        }

        public Criteria andText5Between(String value1, String value2) {
            addCriterion("text5 between", value1, value2, "text5");
            return (Criteria) this;
        }

        public Criteria andText5NotBetween(String value1, String value2) {
            addCriterion("text5 not between", value1, value2, "text5");
            return (Criteria) this;
        }

        public Criteria andText6IsNull() {
            addCriterion("text6 is null");
            return (Criteria) this;
        }

        public Criteria andText6IsNotNull() {
            addCriterion("text6 is not null");
            return (Criteria) this;
        }

        public Criteria andText6EqualTo(String value) {
            addCriterion("text6 =", value, "text6");
            return (Criteria) this;
        }

        public Criteria andText6NotEqualTo(String value) {
            addCriterion("text6 <>", value, "text6");
            return (Criteria) this;
        }

        public Criteria andText6GreaterThan(String value) {
            addCriterion("text6 >", value, "text6");
            return (Criteria) this;
        }

        public Criteria andText6GreaterThanOrEqualTo(String value) {
            addCriterion("text6 >=", value, "text6");
            return (Criteria) this;
        }

        public Criteria andText6LessThan(String value) {
            addCriterion("text6 <", value, "text6");
            return (Criteria) this;
        }

        public Criteria andText6LessThanOrEqualTo(String value) {
            addCriterion("text6 <=", value, "text6");
            return (Criteria) this;
        }

        public Criteria andText6Like(String value) {
            addCriterion("text6 like", value, "text6");
            return (Criteria) this;
        }

        public Criteria andText6NotLike(String value) {
            addCriterion("text6 not like", value, "text6");
            return (Criteria) this;
        }

        public Criteria andText6In(List<String> values) {
            addCriterion("text6 in", values, "text6");
            return (Criteria) this;
        }

        public Criteria andText6NotIn(List<String> values) {
            addCriterion("text6 not in", values, "text6");
            return (Criteria) this;
        }

        public Criteria andText6Between(String value1, String value2) {
            addCriterion("text6 between", value1, value2, "text6");
            return (Criteria) this;
        }

        public Criteria andText6NotBetween(String value1, String value2) {
            addCriterion("text6 not between", value1, value2, "text6");
            return (Criteria) this;
        }

        public Criteria andText7IsNull() {
            addCriterion("text7 is null");
            return (Criteria) this;
        }

        public Criteria andText7IsNotNull() {
            addCriterion("text7 is not null");
            return (Criteria) this;
        }

        public Criteria andText7EqualTo(String value) {
            addCriterion("text7 =", value, "text7");
            return (Criteria) this;
        }

        public Criteria andText7NotEqualTo(String value) {
            addCriterion("text7 <>", value, "text7");
            return (Criteria) this;
        }

        public Criteria andText7GreaterThan(String value) {
            addCriterion("text7 >", value, "text7");
            return (Criteria) this;
        }

        public Criteria andText7GreaterThanOrEqualTo(String value) {
            addCriterion("text7 >=", value, "text7");
            return (Criteria) this;
        }

        public Criteria andText7LessThan(String value) {
            addCriterion("text7 <", value, "text7");
            return (Criteria) this;
        }

        public Criteria andText7LessThanOrEqualTo(String value) {
            addCriterion("text7 <=", value, "text7");
            return (Criteria) this;
        }

        public Criteria andText7Like(String value) {
            addCriterion("text7 like", value, "text7");
            return (Criteria) this;
        }

        public Criteria andText7NotLike(String value) {
            addCriterion("text7 not like", value, "text7");
            return (Criteria) this;
        }

        public Criteria andText7In(List<String> values) {
            addCriterion("text7 in", values, "text7");
            return (Criteria) this;
        }

        public Criteria andText7NotIn(List<String> values) {
            addCriterion("text7 not in", values, "text7");
            return (Criteria) this;
        }

        public Criteria andText7Between(String value1, String value2) {
            addCriterion("text7 between", value1, value2, "text7");
            return (Criteria) this;
        }

        public Criteria andText7NotBetween(String value1, String value2) {
            addCriterion("text7 not between", value1, value2, "text7");
            return (Criteria) this;
        }

        public Criteria andText8IsNull() {
            addCriterion("text8 is null");
            return (Criteria) this;
        }

        public Criteria andText8IsNotNull() {
            addCriterion("text8 is not null");
            return (Criteria) this;
        }

        public Criteria andText8EqualTo(String value) {
            addCriterion("text8 =", value, "text8");
            return (Criteria) this;
        }

        public Criteria andText8NotEqualTo(String value) {
            addCriterion("text8 <>", value, "text8");
            return (Criteria) this;
        }

        public Criteria andText8GreaterThan(String value) {
            addCriterion("text8 >", value, "text8");
            return (Criteria) this;
        }

        public Criteria andText8GreaterThanOrEqualTo(String value) {
            addCriterion("text8 >=", value, "text8");
            return (Criteria) this;
        }

        public Criteria andText8LessThan(String value) {
            addCriterion("text8 <", value, "text8");
            return (Criteria) this;
        }

        public Criteria andText8LessThanOrEqualTo(String value) {
            addCriterion("text8 <=", value, "text8");
            return (Criteria) this;
        }

        public Criteria andText8Like(String value) {
            addCriterion("text8 like", value, "text8");
            return (Criteria) this;
        }

        public Criteria andText8NotLike(String value) {
            addCriterion("text8 not like", value, "text8");
            return (Criteria) this;
        }

        public Criteria andText8In(List<String> values) {
            addCriterion("text8 in", values, "text8");
            return (Criteria) this;
        }

        public Criteria andText8NotIn(List<String> values) {
            addCriterion("text8 not in", values, "text8");
            return (Criteria) this;
        }

        public Criteria andText8Between(String value1, String value2) {
            addCriterion("text8 between", value1, value2, "text8");
            return (Criteria) this;
        }

        public Criteria andText8NotBetween(String value1, String value2) {
            addCriterion("text8 not between", value1, value2, "text8");
            return (Criteria) this;
        }

        public Criteria andText9IsNull() {
            addCriterion("text9 is null");
            return (Criteria) this;
        }

        public Criteria andText9IsNotNull() {
            addCriterion("text9 is not null");
            return (Criteria) this;
        }

        public Criteria andText9EqualTo(String value) {
            addCriterion("text9 =", value, "text9");
            return (Criteria) this;
        }

        public Criteria andText9NotEqualTo(String value) {
            addCriterion("text9 <>", value, "text9");
            return (Criteria) this;
        }

        public Criteria andText9GreaterThan(String value) {
            addCriterion("text9 >", value, "text9");
            return (Criteria) this;
        }

        public Criteria andText9GreaterThanOrEqualTo(String value) {
            addCriterion("text9 >=", value, "text9");
            return (Criteria) this;
        }

        public Criteria andText9LessThan(String value) {
            addCriterion("text9 <", value, "text9");
            return (Criteria) this;
        }

        public Criteria andText9LessThanOrEqualTo(String value) {
            addCriterion("text9 <=", value, "text9");
            return (Criteria) this;
        }

        public Criteria andText9Like(String value) {
            addCriterion("text9 like", value, "text9");
            return (Criteria) this;
        }

        public Criteria andText9NotLike(String value) {
            addCriterion("text9 not like", value, "text9");
            return (Criteria) this;
        }

        public Criteria andText9In(List<String> values) {
            addCriterion("text9 in", values, "text9");
            return (Criteria) this;
        }

        public Criteria andText9NotIn(List<String> values) {
            addCriterion("text9 not in", values, "text9");
            return (Criteria) this;
        }

        public Criteria andText9Between(String value1, String value2) {
            addCriterion("text9 between", value1, value2, "text9");
            return (Criteria) this;
        }

        public Criteria andText9NotBetween(String value1, String value2) {
            addCriterion("text9 not between", value1, value2, "text9");
            return (Criteria) this;
        }

        public Criteria andText10IsNull() {
            addCriterion("text10 is null");
            return (Criteria) this;
        }

        public Criteria andText10IsNotNull() {
            addCriterion("text10 is not null");
            return (Criteria) this;
        }

        public Criteria andText10EqualTo(String value) {
            addCriterion("text10 =", value, "text10");
            return (Criteria) this;
        }

        public Criteria andText10NotEqualTo(String value) {
            addCriterion("text10 <>", value, "text10");
            return (Criteria) this;
        }

        public Criteria andText10GreaterThan(String value) {
            addCriterion("text10 >", value, "text10");
            return (Criteria) this;
        }

        public Criteria andText10GreaterThanOrEqualTo(String value) {
            addCriterion("text10 >=", value, "text10");
            return (Criteria) this;
        }

        public Criteria andText10LessThan(String value) {
            addCriterion("text10 <", value, "text10");
            return (Criteria) this;
        }

        public Criteria andText10LessThanOrEqualTo(String value) {
            addCriterion("text10 <=", value, "text10");
            return (Criteria) this;
        }

        public Criteria andText10Like(String value) {
            addCriterion("text10 like", value, "text10");
            return (Criteria) this;
        }

        public Criteria andText10NotLike(String value) {
            addCriterion("text10 not like", value, "text10");
            return (Criteria) this;
        }

        public Criteria andText10In(List<String> values) {
            addCriterion("text10 in", values, "text10");
            return (Criteria) this;
        }

        public Criteria andText10NotIn(List<String> values) {
            addCriterion("text10 not in", values, "text10");
            return (Criteria) this;
        }

        public Criteria andText10Between(String value1, String value2) {
            addCriterion("text10 between", value1, value2, "text10");
            return (Criteria) this;
        }

        public Criteria andText10NotBetween(String value1, String value2) {
            addCriterion("text10 not between", value1, value2, "text10");
            return (Criteria) this;
        }

        public Criteria andText11IsNull() {
            addCriterion("text11 is null");
            return (Criteria) this;
        }

        public Criteria andText11IsNotNull() {
            addCriterion("text11 is not null");
            return (Criteria) this;
        }

        public Criteria andText11EqualTo(String value) {
            addCriterion("text11 =", value, "text11");
            return (Criteria) this;
        }

        public Criteria andText11NotEqualTo(String value) {
            addCriterion("text11 <>", value, "text11");
            return (Criteria) this;
        }

        public Criteria andText11GreaterThan(String value) {
            addCriterion("text11 >", value, "text11");
            return (Criteria) this;
        }

        public Criteria andText11GreaterThanOrEqualTo(String value) {
            addCriterion("text11 >=", value, "text11");
            return (Criteria) this;
        }

        public Criteria andText11LessThan(String value) {
            addCriterion("text11 <", value, "text11");
            return (Criteria) this;
        }

        public Criteria andText11LessThanOrEqualTo(String value) {
            addCriterion("text11 <=", value, "text11");
            return (Criteria) this;
        }

        public Criteria andText11Like(String value) {
            addCriterion("text11 like", value, "text11");
            return (Criteria) this;
        }

        public Criteria andText11NotLike(String value) {
            addCriterion("text11 not like", value, "text11");
            return (Criteria) this;
        }

        public Criteria andText11In(List<String> values) {
            addCriterion("text11 in", values, "text11");
            return (Criteria) this;
        }

        public Criteria andText11NotIn(List<String> values) {
            addCriterion("text11 not in", values, "text11");
            return (Criteria) this;
        }

        public Criteria andText11Between(String value1, String value2) {
            addCriterion("text11 between", value1, value2, "text11");
            return (Criteria) this;
        }

        public Criteria andText11NotBetween(String value1, String value2) {
            addCriterion("text11 not between", value1, value2, "text11");
            return (Criteria) this;
        }

        public Criteria andText12IsNull() {
            addCriterion("text12 is null");
            return (Criteria) this;
        }

        public Criteria andText12IsNotNull() {
            addCriterion("text12 is not null");
            return (Criteria) this;
        }

        public Criteria andText12EqualTo(String value) {
            addCriterion("text12 =", value, "text12");
            return (Criteria) this;
        }

        public Criteria andText12NotEqualTo(String value) {
            addCriterion("text12 <>", value, "text12");
            return (Criteria) this;
        }

        public Criteria andText12GreaterThan(String value) {
            addCriterion("text12 >", value, "text12");
            return (Criteria) this;
        }

        public Criteria andText12GreaterThanOrEqualTo(String value) {
            addCriterion("text12 >=", value, "text12");
            return (Criteria) this;
        }

        public Criteria andText12LessThan(String value) {
            addCriterion("text12 <", value, "text12");
            return (Criteria) this;
        }

        public Criteria andText12LessThanOrEqualTo(String value) {
            addCriterion("text12 <=", value, "text12");
            return (Criteria) this;
        }

        public Criteria andText12Like(String value) {
            addCriterion("text12 like", value, "text12");
            return (Criteria) this;
        }

        public Criteria andText12NotLike(String value) {
            addCriterion("text12 not like", value, "text12");
            return (Criteria) this;
        }

        public Criteria andText12In(List<String> values) {
            addCriterion("text12 in", values, "text12");
            return (Criteria) this;
        }

        public Criteria andText12NotIn(List<String> values) {
            addCriterion("text12 not in", values, "text12");
            return (Criteria) this;
        }

        public Criteria andText12Between(String value1, String value2) {
            addCriterion("text12 between", value1, value2, "text12");
            return (Criteria) this;
        }

        public Criteria andText12NotBetween(String value1, String value2) {
            addCriterion("text12 not between", value1, value2, "text12");
            return (Criteria) this;
        }

        public Criteria andText13IsNull() {
            addCriterion("text13 is null");
            return (Criteria) this;
        }

        public Criteria andText13IsNotNull() {
            addCriterion("text13 is not null");
            return (Criteria) this;
        }

        public Criteria andText13EqualTo(String value) {
            addCriterion("text13 =", value, "text13");
            return (Criteria) this;
        }

        public Criteria andText13NotEqualTo(String value) {
            addCriterion("text13 <>", value, "text13");
            return (Criteria) this;
        }

        public Criteria andText13GreaterThan(String value) {
            addCriterion("text13 >", value, "text13");
            return (Criteria) this;
        }

        public Criteria andText13GreaterThanOrEqualTo(String value) {
            addCriterion("text13 >=", value, "text13");
            return (Criteria) this;
        }

        public Criteria andText13LessThan(String value) {
            addCriterion("text13 <", value, "text13");
            return (Criteria) this;
        }

        public Criteria andText13LessThanOrEqualTo(String value) {
            addCriterion("text13 <=", value, "text13");
            return (Criteria) this;
        }

        public Criteria andText13Like(String value) {
            addCriterion("text13 like", value, "text13");
            return (Criteria) this;
        }

        public Criteria andText13NotLike(String value) {
            addCriterion("text13 not like", value, "text13");
            return (Criteria) this;
        }

        public Criteria andText13In(List<String> values) {
            addCriterion("text13 in", values, "text13");
            return (Criteria) this;
        }

        public Criteria andText13NotIn(List<String> values) {
            addCriterion("text13 not in", values, "text13");
            return (Criteria) this;
        }

        public Criteria andText13Between(String value1, String value2) {
            addCriterion("text13 between", value1, value2, "text13");
            return (Criteria) this;
        }

        public Criteria andText13NotBetween(String value1, String value2) {
            addCriterion("text13 not between", value1, value2, "text13");
            return (Criteria) this;
        }

        public Criteria andText14IsNull() {
            addCriterion("text14 is null");
            return (Criteria) this;
        }

        public Criteria andText14IsNotNull() {
            addCriterion("text14 is not null");
            return (Criteria) this;
        }

        public Criteria andText14EqualTo(String value) {
            addCriterion("text14 =", value, "text14");
            return (Criteria) this;
        }

        public Criteria andText14NotEqualTo(String value) {
            addCriterion("text14 <>", value, "text14");
            return (Criteria) this;
        }

        public Criteria andText14GreaterThan(String value) {
            addCriterion("text14 >", value, "text14");
            return (Criteria) this;
        }

        public Criteria andText14GreaterThanOrEqualTo(String value) {
            addCriterion("text14 >=", value, "text14");
            return (Criteria) this;
        }

        public Criteria andText14LessThan(String value) {
            addCriterion("text14 <", value, "text14");
            return (Criteria) this;
        }

        public Criteria andText14LessThanOrEqualTo(String value) {
            addCriterion("text14 <=", value, "text14");
            return (Criteria) this;
        }

        public Criteria andText14Like(String value) {
            addCriterion("text14 like", value, "text14");
            return (Criteria) this;
        }

        public Criteria andText14NotLike(String value) {
            addCriterion("text14 not like", value, "text14");
            return (Criteria) this;
        }

        public Criteria andText14In(List<String> values) {
            addCriterion("text14 in", values, "text14");
            return (Criteria) this;
        }

        public Criteria andText14NotIn(List<String> values) {
            addCriterion("text14 not in", values, "text14");
            return (Criteria) this;
        }

        public Criteria andText14Between(String value1, String value2) {
            addCriterion("text14 between", value1, value2, "text14");
            return (Criteria) this;
        }

        public Criteria andText14NotBetween(String value1, String value2) {
            addCriterion("text14 not between", value1, value2, "text14");
            return (Criteria) this;
        }

        public Criteria andText15IsNull() {
            addCriterion("text15 is null");
            return (Criteria) this;
        }

        public Criteria andText15IsNotNull() {
            addCriterion("text15 is not null");
            return (Criteria) this;
        }

        public Criteria andText15EqualTo(String value) {
            addCriterion("text15 =", value, "text15");
            return (Criteria) this;
        }

        public Criteria andText15NotEqualTo(String value) {
            addCriterion("text15 <>", value, "text15");
            return (Criteria) this;
        }

        public Criteria andText15GreaterThan(String value) {
            addCriterion("text15 >", value, "text15");
            return (Criteria) this;
        }

        public Criteria andText15GreaterThanOrEqualTo(String value) {
            addCriterion("text15 >=", value, "text15");
            return (Criteria) this;
        }

        public Criteria andText15LessThan(String value) {
            addCriterion("text15 <", value, "text15");
            return (Criteria) this;
        }

        public Criteria andText15LessThanOrEqualTo(String value) {
            addCriterion("text15 <=", value, "text15");
            return (Criteria) this;
        }

        public Criteria andText15Like(String value) {
            addCriterion("text15 like", value, "text15");
            return (Criteria) this;
        }

        public Criteria andText15NotLike(String value) {
            addCriterion("text15 not like", value, "text15");
            return (Criteria) this;
        }

        public Criteria andText15In(List<String> values) {
            addCriterion("text15 in", values, "text15");
            return (Criteria) this;
        }

        public Criteria andText15NotIn(List<String> values) {
            addCriterion("text15 not in", values, "text15");
            return (Criteria) this;
        }

        public Criteria andText15Between(String value1, String value2) {
            addCriterion("text15 between", value1, value2, "text15");
            return (Criteria) this;
        }

        public Criteria andText15NotBetween(String value1, String value2) {
            addCriterion("text15 not between", value1, value2, "text15");
            return (Criteria) this;
        }

        public Criteria andText16IsNull() {
            addCriterion("text16 is null");
            return (Criteria) this;
        }

        public Criteria andText16IsNotNull() {
            addCriterion("text16 is not null");
            return (Criteria) this;
        }

        public Criteria andText16EqualTo(String value) {
            addCriterion("text16 =", value, "text16");
            return (Criteria) this;
        }

        public Criteria andText16NotEqualTo(String value) {
            addCriterion("text16 <>", value, "text16");
            return (Criteria) this;
        }

        public Criteria andText16GreaterThan(String value) {
            addCriterion("text16 >", value, "text16");
            return (Criteria) this;
        }

        public Criteria andText16GreaterThanOrEqualTo(String value) {
            addCriterion("text16 >=", value, "text16");
            return (Criteria) this;
        }

        public Criteria andText16LessThan(String value) {
            addCriterion("text16 <", value, "text16");
            return (Criteria) this;
        }

        public Criteria andText16LessThanOrEqualTo(String value) {
            addCriterion("text16 <=", value, "text16");
            return (Criteria) this;
        }

        public Criteria andText16Like(String value) {
            addCriterion("text16 like", value, "text16");
            return (Criteria) this;
        }

        public Criteria andText16NotLike(String value) {
            addCriterion("text16 not like", value, "text16");
            return (Criteria) this;
        }

        public Criteria andText16In(List<String> values) {
            addCriterion("text16 in", values, "text16");
            return (Criteria) this;
        }

        public Criteria andText16NotIn(List<String> values) {
            addCriterion("text16 not in", values, "text16");
            return (Criteria) this;
        }

        public Criteria andText16Between(String value1, String value2) {
            addCriterion("text16 between", value1, value2, "text16");
            return (Criteria) this;
        }

        public Criteria andText16NotBetween(String value1, String value2) {
            addCriterion("text16 not between", value1, value2, "text16");
            return (Criteria) this;
        }

        public Criteria andText17IsNull() {
            addCriterion("text17 is null");
            return (Criteria) this;
        }

        public Criteria andText17IsNotNull() {
            addCriterion("text17 is not null");
            return (Criteria) this;
        }

        public Criteria andText17EqualTo(String value) {
            addCriterion("text17 =", value, "text17");
            return (Criteria) this;
        }

        public Criteria andText17NotEqualTo(String value) {
            addCriterion("text17 <>", value, "text17");
            return (Criteria) this;
        }

        public Criteria andText17GreaterThan(String value) {
            addCriterion("text17 >", value, "text17");
            return (Criteria) this;
        }

        public Criteria andText17GreaterThanOrEqualTo(String value) {
            addCriterion("text17 >=", value, "text17");
            return (Criteria) this;
        }

        public Criteria andText17LessThan(String value) {
            addCriterion("text17 <", value, "text17");
            return (Criteria) this;
        }

        public Criteria andText17LessThanOrEqualTo(String value) {
            addCriterion("text17 <=", value, "text17");
            return (Criteria) this;
        }

        public Criteria andText17Like(String value) {
            addCriterion("text17 like", value, "text17");
            return (Criteria) this;
        }

        public Criteria andText17NotLike(String value) {
            addCriterion("text17 not like", value, "text17");
            return (Criteria) this;
        }

        public Criteria andText17In(List<String> values) {
            addCriterion("text17 in", values, "text17");
            return (Criteria) this;
        }

        public Criteria andText17NotIn(List<String> values) {
            addCriterion("text17 not in", values, "text17");
            return (Criteria) this;
        }

        public Criteria andText17Between(String value1, String value2) {
            addCriterion("text17 between", value1, value2, "text17");
            return (Criteria) this;
        }

        public Criteria andText17NotBetween(String value1, String value2) {
            addCriterion("text17 not between", value1, value2, "text17");
            return (Criteria) this;
        }

        public Criteria andText18IsNull() {
            addCriterion("text18 is null");
            return (Criteria) this;
        }

        public Criteria andText18IsNotNull() {
            addCriterion("text18 is not null");
            return (Criteria) this;
        }

        public Criteria andText18EqualTo(String value) {
            addCriterion("text18 =", value, "text18");
            return (Criteria) this;
        }

        public Criteria andText18NotEqualTo(String value) {
            addCriterion("text18 <>", value, "text18");
            return (Criteria) this;
        }

        public Criteria andText18GreaterThan(String value) {
            addCriterion("text18 >", value, "text18");
            return (Criteria) this;
        }

        public Criteria andText18GreaterThanOrEqualTo(String value) {
            addCriterion("text18 >=", value, "text18");
            return (Criteria) this;
        }

        public Criteria andText18LessThan(String value) {
            addCriterion("text18 <", value, "text18");
            return (Criteria) this;
        }

        public Criteria andText18LessThanOrEqualTo(String value) {
            addCriterion("text18 <=", value, "text18");
            return (Criteria) this;
        }

        public Criteria andText18Like(String value) {
            addCriterion("text18 like", value, "text18");
            return (Criteria) this;
        }

        public Criteria andText18NotLike(String value) {
            addCriterion("text18 not like", value, "text18");
            return (Criteria) this;
        }

        public Criteria andText18In(List<String> values) {
            addCriterion("text18 in", values, "text18");
            return (Criteria) this;
        }

        public Criteria andText18NotIn(List<String> values) {
            addCriterion("text18 not in", values, "text18");
            return (Criteria) this;
        }

        public Criteria andText18Between(String value1, String value2) {
            addCriterion("text18 between", value1, value2, "text18");
            return (Criteria) this;
        }

        public Criteria andText18NotBetween(String value1, String value2) {
            addCriterion("text18 not between", value1, value2, "text18");
            return (Criteria) this;
        }

        public Criteria andText19IsNull() {
            addCriterion("text19 is null");
            return (Criteria) this;
        }

        public Criteria andText19IsNotNull() {
            addCriterion("text19 is not null");
            return (Criteria) this;
        }

        public Criteria andText19EqualTo(String value) {
            addCriterion("text19 =", value, "text19");
            return (Criteria) this;
        }

        public Criteria andText19NotEqualTo(String value) {
            addCriterion("text19 <>", value, "text19");
            return (Criteria) this;
        }

        public Criteria andText19GreaterThan(String value) {
            addCriterion("text19 >", value, "text19");
            return (Criteria) this;
        }

        public Criteria andText19GreaterThanOrEqualTo(String value) {
            addCriterion("text19 >=", value, "text19");
            return (Criteria) this;
        }

        public Criteria andText19LessThan(String value) {
            addCriterion("text19 <", value, "text19");
            return (Criteria) this;
        }

        public Criteria andText19LessThanOrEqualTo(String value) {
            addCriterion("text19 <=", value, "text19");
            return (Criteria) this;
        }

        public Criteria andText19Like(String value) {
            addCriterion("text19 like", value, "text19");
            return (Criteria) this;
        }

        public Criteria andText19NotLike(String value) {
            addCriterion("text19 not like", value, "text19");
            return (Criteria) this;
        }

        public Criteria andText19In(List<String> values) {
            addCriterion("text19 in", values, "text19");
            return (Criteria) this;
        }

        public Criteria andText19NotIn(List<String> values) {
            addCriterion("text19 not in", values, "text19");
            return (Criteria) this;
        }

        public Criteria andText19Between(String value1, String value2) {
            addCriterion("text19 between", value1, value2, "text19");
            return (Criteria) this;
        }

        public Criteria andText19NotBetween(String value1, String value2) {
            addCriterion("text19 not between", value1, value2, "text19");
            return (Criteria) this;
        }

        public Criteria andText20IsNull() {
            addCriterion("text20 is null");
            return (Criteria) this;
        }

        public Criteria andText20IsNotNull() {
            addCriterion("text20 is not null");
            return (Criteria) this;
        }

        public Criteria andText20EqualTo(String value) {
            addCriterion("text20 =", value, "text20");
            return (Criteria) this;
        }

        public Criteria andText20NotEqualTo(String value) {
            addCriterion("text20 <>", value, "text20");
            return (Criteria) this;
        }

        public Criteria andText20GreaterThan(String value) {
            addCriterion("text20 >", value, "text20");
            return (Criteria) this;
        }

        public Criteria andText20GreaterThanOrEqualTo(String value) {
            addCriterion("text20 >=", value, "text20");
            return (Criteria) this;
        }

        public Criteria andText20LessThan(String value) {
            addCriterion("text20 <", value, "text20");
            return (Criteria) this;
        }

        public Criteria andText20LessThanOrEqualTo(String value) {
            addCriterion("text20 <=", value, "text20");
            return (Criteria) this;
        }

        public Criteria andText20Like(String value) {
            addCriterion("text20 like", value, "text20");
            return (Criteria) this;
        }

        public Criteria andText20NotLike(String value) {
            addCriterion("text20 not like", value, "text20");
            return (Criteria) this;
        }

        public Criteria andText20In(List<String> values) {
            addCriterion("text20 in", values, "text20");
            return (Criteria) this;
        }

        public Criteria andText20NotIn(List<String> values) {
            addCriterion("text20 not in", values, "text20");
            return (Criteria) this;
        }

        public Criteria andText20Between(String value1, String value2) {
            addCriterion("text20 between", value1, value2, "text20");
            return (Criteria) this;
        }

        public Criteria andText20NotBetween(String value1, String value2) {
            addCriterion("text20 not between", value1, value2, "text20");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}